package sv.gob.mh.dgii.model;

// Generated Dec 12, 2007 1:25:05 PM by Hibernate Tools 3.2.0.CR1

import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * DvEtapa generated by hbm2java
 */
@Entity
@Table(name = "DV_ETAPA", schema = "DEVOLUCIONES")
public class DvEtapa implements java.io.Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 9134831365136548869L;
	private Integer cetapa;
	private String detapa;
	private String cusuario;
	private Date fhingreso;
//	private Set<DvCambioEstados> dvCambioEstadoses = new HashSet<DvCambioEstados>(
//			0);
	private Set<DvEtapasValidas> dvEtapasValidasesForCEtapa = new HashSet<DvEtapasValidas>(
			0);
	private Set<DvEtapasValidas> dvEtapasValidasesForCEtapaSiguiente = new HashSet<DvEtapasValidas>(
			0);

	public DvEtapa() {
	}

	public DvEtapa(Integer cetapa, String detapa, String cusuario,
			Date fhingreso) {
		this.cetapa = cetapa;
		this.detapa = detapa;
		this.cusuario = cusuario;
		this.fhingreso = fhingreso;
	}

	public DvEtapa(Integer cetapa, String detapa, String cusuario,
			Date fhingreso,
//			Set<DvCambioEstados> dvCambioEstadoses,
			Set<DvEtapasValidas> dvEtapasValidasesForCEtapa,
			Set<DvEtapasValidas> dvEtapasValidasesForCEtapaSiguiente) {
		this.cetapa = cetapa;
		this.detapa = detapa;
		this.cusuario = cusuario;
		this.fhingreso = fhingreso;
//		this.dvCambioEstadoses = dvCambioEstadoses;
		this.dvEtapasValidasesForCEtapa = dvEtapasValidasesForCEtapa;
		this.dvEtapasValidasesForCEtapaSiguiente = dvEtapasValidasesForCEtapaSiguiente;
	}

	@Id
	@Column(name = "C_ETAPA", unique = true, nullable = false, precision = 5, scale = 0)
	public Integer getCetapa() {
		return this.cetapa;
	}

	public void setCetapa(Integer cetapa) {
		this.cetapa = cetapa;
	}

	@Column(name = "D_ETAPA", nullable = false, length = 50)
	public String getDetapa() {
		return this.detapa;
	}

	public void setDetapa(String detapa) {
		this.detapa = detapa;
	}

	@Column(name = "C_USUARIO", nullable = false, length = 30)
	public String getCusuario() {
		return this.cusuario;
	}

	public void setCusuario(String cusuario) {
		this.cusuario = cusuario;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "FH_INGRESO", nullable = false, length = 7)
	public Date getFhingreso() {
		return this.fhingreso;
	}

	public void setFhingreso(Date fhingreso) {
		this.fhingreso = fhingreso;
	}

//	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "dvEtapa")
//	public Set<DvCambioEstados> getDvCambioEstadoses() {
//		return this.dvCambioEstadoses;
//	}

//	public void setDvCambioEstadoses(Set<DvCambioEstados> dvCambioEstadoses) {
//		this.dvCambioEstadoses = dvCambioEstadoses;
//	}

	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "dvEtapaByCEtapa")
	public Set<DvEtapasValidas> getDvEtapasValidasesForCEtapa() {
		return this.dvEtapasValidasesForCEtapa;
	}

	public void setDvEtapasValidasesForCEtapa(
			Set<DvEtapasValidas> dvEtapasValidasesForCEtapa) {
		this.dvEtapasValidasesForCEtapa = dvEtapasValidasesForCEtapa;
	}

	@OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY, mappedBy = "dvEtapaByCEtapaSiguiente")
	public Set<DvEtapasValidas> getDvEtapasValidasesForCEtapaSiguiente() {
		return this.dvEtapasValidasesForCEtapaSiguiente;
	}

	public void setDvEtapasValidasesForCEtapaSiguiente(
			Set<DvEtapasValidas> dvEtapasValidasesForCEtapaSiguiente) {
		this.dvEtapasValidasesForCEtapaSiguiente = dvEtapasValidasesForCEtapaSiguiente;
	}

}
